home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
prog
/
atari
/
m2
/
cat3src
/
cat
/
catgloba.d
< prev
next >
Wrap
Text File
|
1997-10-26
|
6KB
|
167 lines
DEFINITION MODULE CatGlobal;
(* Einfache Basisfunktionen, die in mehreren Modulen gebraucht werden.
* Am 2.11. CatGlobal und CatUtils zusammengelegt in CatGlobal,
* da zwei so Minimodule nicht ntig sind! DS.
*)
FROM SYSTEM IMPORT ADDRESS, LOC;
IMPORT CatTypes;
FROM GrafBase IMPORT Rectangle;
VAR SavePath : CatTypes.pathStrType;
SaveName : CatTypes.nameStrType;
OpenName : CatTypes.nameStrType;
infPath : CatTypes.pathStrType;
infName : CatTypes.nameStrType;
prgPath : CatTypes.pathStrType;
prgName : CatTypes.nameStrType;
userName : CatTypes.String255;
(* Positionen sichern? *)
saveAllPositions : BOOLEAN;
(* Farbeinstellungen fr alle Fenster *)
editTextCol : INTEGER;
editBackCol : INTEGER;
viewTextCol : INTEGER;
viewBackCol : INTEGER;
viewQuoteCol : INTEGER;
viewQuoteEff : INTEGER;
listTextCol : INTEGER;
listBackCol : INTEGER;
listOwnCol : INTEGER;
listUnreadCol: INTEGER;
listOwnEff : INTEGER;
listUnreadEff: INTEGER;
treeTextCol : INTEGER;
treeBackCol : INTEGER;
treeLineCol : INTEGER;
treeUnreadCol: INTEGER;
treeUnreadEff: INTEGER;
msgTextCol : INTEGER;
msgBackCol : INTEGER;
msgHoldCol : INTEGER;
msgHoldEff : INTEGER;
(* Nur zum Lesen! *)
magicMac : BOOLEAN; (* ist das hier ein Mac? *)
magIx : BOOLEAN; (* ist Mag!X installiert? *)
multiGEM : BOOLEAN; (* ist MultiGEM (uh) installiert? *)
multiTOS : BOOLEAN; (* oder MultiTos *)
magIxVer : CARDINAL; (* Welche Mag!X-Version *)
magIxDate : LONGCARD; (* Datum der MagiC-Version im Format jjjjmmtt *)
multiTask : BOOLEAN; (* Allgemein Multitasking (Mag!X oder MultiTOS) *)
minTos14 : BOOLEAN; (* mindestens TOS 1.4 vorhanden *)
tos3DLook : BOOLEAN; (* Hat das AES eine aktive 3D-Darstellung *)
isMintDomain: BOOLEAN; (* Wir befinden uns in der Mint-Domain *)
PROCEDURE SetColors();
(* Setzt die Farbvariablen auf die in den Configvariablen
* eingestellten Werte
*)
PROCEDURE busyMouse();
(* Stellt rotierenden Ball dar, bei jedem Aufrug dreht eer sich weiter *)
PROCEDURE FullScreenRedraw();
(* Nur fr nicht-MultiTOS geeignet, lst ein Redraw des gesamten *)
(* Bildschirms beim nchsten Durchlaufen der Hauptschleife aus *)
PROCEDURE UpdateWindow(doUpdate : BOOLEAN);
(* Sorgt fr die Update-Window Aufrufe. Es ist immer nur garantiert ein
* WindUpdate aktiv, keine geschachtelten mehr!
*)
PROCEDURE FselGet(VAR InPath, InSel: ARRAY OF CHAR; REF ext, msg : ARRAY OF CHAR;
pathOnly : BOOLEAN):BOOLEAN;
(* Ausgelagert aus CAT.M, da ich die auch im Editor verwenden kann.
*)
PROCEDURE WithShift (kstate : BITSET) : BOOLEAN;
(* Gibt zurck, ob eine der Shifttasten gedrckt wurde *)
PROCEDURE WithCtrl (kstate : BITSET) : BOOLEAN;
(* Gibt zurck, ob Ctrl gedrckt wurde *)
PROCEDURE WithAlt (kstate : BITSET) : BOOLEAN;
(* Gibt zurck, ob Alternate gedrckt wurde *)
PROCEDURE ConvertTabs (REF source : ARRAY OF CHAR; VAR dest : ARRAY OF CHAR; tabSize : CARDINAL);
(* Expandiert den String zu einem ohne Tabs *)
PROCEDURE ReplaceStr (VAR str : ARRAY OF CHAR; REF s1, s2 : ARRAY OF CHAR);
(* Ersetzt in str alle Vorkommen der Zeichenkette s1 durch s2
*)
PROCEDURE MakeStr(VAR source, dest : ARRAY OF CHAR);
(* Setzt einen neuen String in dest ein und behlt die
* Shortcuts von dest bei
*)
PROCEDURE CreateBackup (REF fname : ARRAY OF CHAR): BOOLEAN;
(* Wenn die Datei existiert, dann wird aus dieser ein Backup
* gemacht.
*)
(*-----------------------------------------------------------------------
*
* Pathfree ersetzt MagicDOS.Dfree
*
* Durch PathFree wird kontrolliert, wieviel Speicherplatz in einem
* bestimmten Pfad frei ist. Dabei werden gelinkte Pfade korrekt
* aufgelst.
*
*-----------------------------------------------------------------------*)
PROCEDURE PathFree(VAR dib : ARRAY OF LOC; VAR Path : ARRAY OF CHAR);
PROCEDURE Bing(which : INTEGER);
(* Erzeugt einen Bing-Sound. Gltige Werte sind 0 bis 6, wobei
* 0 die Systemglocke ist, 1 bis 6 sind eigene Sounds.
* Werte > 6 fhren ebenfalls zur Systemglocke.
*)
PROCEDURE SetStrings (tree: ADDRESS; from, to : INTEGER;
REF string : ARRAY OF CHAR);
(* Verteilt den String auf verschiedene Textobjekte
*)
PROCEDURE GetStrings (tree: ADDRESS; from, to: INTEGER;
VAR string : ARRAY OF CHAR);
(* Umkehrung zu SetStrings, liest die einzelnen Objekte aus und
* setzt den String zusammen
*)
PROCEDURE SetAppl (REF str: ARRAY OF CHAR);
(* Setzt den Namen der Applikation fr interne Zwecke
* Der Name mu ohne Extension angegeben werden.
*)
PROCEDURE GetApplPath (VAR path: ARRAY OF CHAR);
(* liefert den Pfad der Applikation, initialisiert dabei die interne
* Variable. Vorher mu einmal SetAppl aufgerufen werden
*)
PROCEDURE ApplPath (VAR path: ARRAY OF CHAR);
(* liefert den Pfad der Applikation
*)
PROCEDURE ApplName (VAR name: ARRAY OF CHAR);
(* liefert den Namen der Applikation
*)
PROCEDURE Konjugiere (REF str1, single, plural: ARRAY OF CHAR;
count: CARDINAL; VAR out: ARRAY OF CHAR);
(* konjugiert ein Wort nach Singular oder Plural
*)
PROCEDURE KurzName (REF name: ARRAY OF CHAR;
VAR ziel: ARRAY OF CHAR; maxLen: CARDINAL);
(* Erzeugt aus einem Benutzernamen ggf. einen auf maxLen
* verkrzten Namen, der sinnvoll abgekrzt ist
*)
END CatGlobal.